/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 * 
 * Patientin DAO Layer interface
 */
package lu.med.praxiswahl.wahlumed.dao.beans.daointerface;

import java.util.List;

import javax.ejb.Local;

import lu.med.praxiswahl.wahlumed.model.beans.CustomerTBL;

/**
*
* @author Patrick kendzo
* Email: pkendzo@msn.com
*/
@Local
public interface CustomerDAOInt
{
    
    public void persist(CustomerTBL todo);
    public void delete(String todo);
    public void update(CustomerTBL todo);
    public void updateMatricule(String todo, String tomatricule);
    public boolean RegisterNumberAvailable(String todo);
    public List<CustomerTBL> findRegisterNumberBySubStringLastName(String substr);
    public List<CustomerTBL> findRegisterNumberBySubStringMatricule(String substr);
    public List<CustomerTBL> findRegisterNumberBySubStringFirstName(String substr);
    
    public CustomerTBL findCustomerByRegisterNumber(String todo); // Sucht nach der Eingegebene Matrikelnummer
    public CustomerTBL findCustomerByFirstName(String todo); // Sucht nach der Eingegebene Matrikelnummer
    public CustomerTBL findCustomerByLastName(String todo); // Sucht nach der Eingegebene Matrikelnummer
    
    public List<CustomerTBL> findAvailableCustomers(); // Listet alle vorhandene Patientinen
    
    public List<CustomerTBL> findCustomerByFirstNameAndLastName(String firstName, String lastName);
	public List<CustomerTBL> findCustomerByFirstNameAndMatricule(String firstName, String matricule);
	public List<CustomerTBL> findCustomerByLastNameAndMatricule(String lastName, String matricule);
	public List<CustomerTBL> findCustomerByFirstNameAndLastNameAndMatricule(String firstName, String lastName, String matricule);
	public List<CustomerTBL> retrieveCustomer(String searchStr);
    
}
